package com.starlink.model.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.starlink.common.domain.BaseVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @author zhanghong
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper = false)
@ApiModel("商城积分商品订单响应模型")
public class MallIntegrationOrderVO extends BaseVO implements Serializable {
    @ApiModelProperty("用户ID")
    private Long userId;
    @ApiModelProperty("收货地址ID")
    private Long addressId;
    @ApiModelProperty("积分商品ID")
    private Long mallIntegrationId;
    @ApiModelProperty("订单状态")
    private String status;
    @ApiModelProperty("订单编号")
    private String orderNum;
    @ApiModelProperty("支付类型 1积分支付 2积分+钱")
    private Integer paymentType;
    @ApiModelProperty("金钱价格")
    private BigDecimal price;
    @ApiModelProperty("积分价格")
    private Long integralPrice;
    @ApiModelProperty("运费")
    private BigDecimal freight;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("取消时间")
    private Date cancelTime;
    @ApiModelProperty("购买数量")
    private Long quantity;
    @ApiModelProperty("是否售后 0：否 1：是")
    private Integer isRefunds;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("超时时间")
    private Date timeout;
    @ApiModelProperty("备注")
    private String comments;
}
